const data = {
  a: 1,
  b: 2,
  c: {
    d: 1,
  },
};

const newData = new Proxy(data, {
  get(target, key, receiver) {
    console.log('get value: ', key);
    return Reflect.get(target, key, receiver);
  },
  set(target, key, value, receiver) {
    console.log('set value: ', key);
    return Reflect.set(target, key, value, receiver);
  },
});
